Preliminaries

Descriptives

Tempo cond. Length N taps N trials Mean IOI Median IOI SD IOI Mean ITI Median ITI SD ITI
400 4 5874 1958 401.4441 401.7483 144.9944 412.3997 406.0227 159.6118
400 5 7460 1865 401.9040 402.6178 144.6322 419.8252 421.3636 160.3370
600 4 5925 1975 599.6049 598.2517 145.4408 570.2247 574.7727 161.6640
600 5 7788 1947 599.5896 598.6911 145.1265 560.9215 566.5909 162.1835

Violin plots with all conditions

G measure

Entropy

Number of small integer ratios introduced

Violin plots with only 600 ms, 5 events

Entropy

G measure

Binary/ternary introduced

Correlations between behavioural measures

Correlations with network connectivity

Fixel-based analysis (isochrony vs. partial residuals)

LS0tCnRpdGxlOiAiTlBPUjogUGxvdHMiCmF1dGhvcjogSmVsbGUgdmFuIGRlciBXZXJmZgpkYXRlOiAwOC8wOC8yMDIzCm91dHB1dDoKICAgIGh0bWxfbm90ZWJvb2s6CiAgICAgICAgY29kZV9mb2xkaW5nOiBoaWRlCiAgICAgICAgdG9jOiB0cnVlCiAgICAgICAgdG9jX2Zsb2F0OiB0cnVlCi0tLQoKCiMgUHJlbGltaW5hcmllcwoKYGBge3IgbG9hZC1wYWNrYWdlcywgZWNobyA9IEZBTFNFLCB3YXJuaW5nID0gRkFMU0UsIG1lc3NhZ2UgPSBGQUxTRX0KIyMjIyMjIyMjIyMjIyBQQUNLQUdFUyBBTkQgT1RIRVIgUFJFTElNSU5BUklFUyAjIyMjIyMjIyMjIyMKCiMgZm9yIGVhc3kgbG9hZGluZyBvZiBwYWNrYWdlcwppZiAoIXJlcXVpcmUoInBhY21hbiIpKSBpbnN0YWxsLnBhY2thZ2VzKCJwYWNtYW4iKQoKIyBsb2FkIHBhY2thZ2VzCnBfbG9hZCgKICAic3RyaW5nciIsICJpbmkiLCAiZ2RhdGEiLCAicGx5ciIsICJkcGx5ciIsICJoZXJlIiwgImdncGxvdDIiLCAicmVzaGFwZTIiLCAiZ2dzY2kiLAogICJnZ2hpZ2hsaWdodCIsICJnZ3JpZGdlcyIsICJ2aXJpZGlzIiwgIlJDb2xvckJyZXdlciIsICJsZW1vbiIsICJzY2ljbyIsICJsYXRleDJleHAiLCAiR0dhbGx5IiwgImthYmxlRXh0cmEiLAogICJjb3dwbG90IiwgInJtYXRpbyIKKQoKIyBmb3IgcmVsYXRpdmUgZmlsZSBwYXRocyAoZS5nLiBoZXJlKCdJbnB1dCcsICdmaWxlLmNzdicpKQpoZXJlOjppX2FtKGZpbGUucGF0aCgic2NyaXB0cyIsICJwbG90cyIsICJiZWhhdmlvdXJhbC5SbWQiKSkKCnNvdXJjZShoZXJlKCJzY3JpcHRzIiwgImN1c3RvbV9nZ3Bsb3RfdGhlbWUuUiIpKQoKIyBLbml0ciBvdXRwdXQgc2V0dGluZ3MKa25pdHI6Om9wdHNfY2h1bmskc2V0KAogIGVjaG8gPSBGQUxTRSwKICB3YXJuaW5nID0gRkFMU0UsCiAgbWVzc2FnZSA9IEZBTFNFLAogIG91dC53aWR0aCA9ICIxMDAlIiwKICBmaWcud2lkdGggPSAxMCwKICBmaWcuaGVpZ2h0ID0gMTAsCiAgY2FjaGUgPSBUUlVFCikKCmxhYmVscyA8LSBhc19sYWJlbGxlcihjKAogICI0MDAiID0gIjQwMCBtcyIsCiAgIjYwMCIgPSAiNjAwIG1zIiwKICAiNCIgPSAiNCBldmVudHMiLAogICI1IiA9ICI1IGV2ZW50cyIKKSkKYGBgCgoKYGBge3IgbG9hZC1kYXRhfQpJVElzIDwtIHJlYWQuY3N2KGhlcmUoImRhdGEiLCAiYmVoYXZpb3VyYWwiLCAicHJvY2Vzc2VkIiwgIklUSXMuY3N2IikpCklUSXMuYnl0cmlhbCA8LSByZWFkLmNzdihoZXJlKCJkYXRhIiwgImJlaGF2aW91cmFsIiwgInByb2Nlc3NlZCIsICJJVElzX2J5dHJpYWwuY3N2IikpCnBwLm1lYXN1cmVzIDwtIHJlYWQuY3N2KGhlcmUoImRhdGEiLCAiYmVoYXZpb3VyYWwiLCAicHJvY2Vzc2VkIiwgInBwX21lYXN1cmVzLmNzdiIpKQppbnRlcnZhbC5yYXRpb3MgPC0gcmVhZC5jc3YoaGVyZSgiZGF0YSIsICJiZWhhdmlvdXJhbCIsICJwcm9jZXNzZWQiLCAicmF0aW9zX2ludHJvZHVjZWQuY3N2IikpCgpjb3JyZWxhdGlvbnMgPC0gYXMuZGF0YS5mcmFtZShsaXN0KAogICJiaW5hcnlfdGVybmFyeV9iZWhhdiIgPSByZWFkLm1hdChoZXJlKCJkYXRhIiwgImJyYWluIiwgImNvcnJlbGF0aW9ucyIsICJiaW5hcnlfb3JfdGVybmFyeV9pbnRyb2R1Y2VkX2FsbF9iZWhhdi5tYXQiKSkkYWxsX2JlaGF2LAogICJiaW5hcnlfdGVybmFyeV9jb25uIiA9IHJlYWQubWF0KGhlcmUoImRhdGEiLCAiYnJhaW4iLCAiY29ycmVsYXRpb25zIiwgImJpbmFyeV9vcl90ZXJuYXJ5X2ludHJvZHVjZWRfTmVnQ29ublN0cmVuZ3RoLm1hdCIpKSR0cmFpbl9zdW1uZWcsCiAgImJpbmFyeV90ZXJuYXJ5X3N0cnVjdCIgPSByZWFkLm1hdChoZXJlKCJkYXRhIiwgImJyYWluIiwgImNvcnJlbGF0aW9ucyIsICJiaW5hcnlfb3JfdGVybmFyeV9pbnRyb2R1Y2VkX3N0cnVjdHVyYWxfTmVnQ29ublN0cmVuZ3RoLm1hdCIpKSR0cmFpbl9zdW1uZWcsCiAgImVudHJvcHlfYmVoYXYiID0gcmVhZC5tYXQoaGVyZSgiZGF0YSIsICJicmFpbiIsICJjb3JyZWxhdGlvbnMiLCAiZW50cm9weURpZmZfYWxsX2JlaGF2Lm1hdCIpKSRhbGxfYmVoYXYsCiAgImVudHJvcHlfY29ubiIgPSByZWFkLm1hdChoZXJlKCJkYXRhIiwgImJyYWluIiwgImNvcnJlbGF0aW9ucyIsICJlbnRyb3B5RGlmZl9OZWdDb25uU3RyZW5ndGgubWF0IikpJHRyYWluX3N1bW5lZywKICAiR19iZWhhdiIgPSByZWFkLm1hdChoZXJlKCJkYXRhIiwgImJyYWluIiwgImNvcnJlbGF0aW9ucyIsICJHcmVzcG9uc2VfYWxsX2JlaGF2Lm1hdCIpKSRhbGxfYmVoYXYsCiAgIkdfY29ubiIgPSByZWFkLm1hdChoZXJlKCJkYXRhIiwgImJyYWluIiwgImNvcnJlbGF0aW9ucyIsICJHcmVzcG9uc2VfTmVnQ29ublN0cmVuZ3RoLm1hdCIpKSR0cmFpbl9zdW1uZWcKKSkKYGBgCgpgYGB7ciBkYXRhdHlwZXN9CnBwLm1lYXN1cmVzJHBwX2lkX2JlaGF2IDwtIGFzLmZhY3RvcihwcC5tZWFzdXJlcyRwcF9pZF9iZWhhdikKcHAubWVhc3VyZXMkc3RpbV90ZW1wb19pbnRlbmRlZCA8LSBhcy5mYWN0b3IocHAubWVhc3VyZXMkc3RpbV90ZW1wb19pbnRlbmRlZCkKcHAubWVhc3VyZXMkbGVuZ3RoIDwtIGFzLmZhY3RvcihwcC5tZWFzdXJlcyRsZW5ndGgpCgpwcC5tZWFzdXJlcyRjb25kaXRpb24gPC0gYXMuZmFjdG9yKHBhc3RlKHBwLm1lYXN1cmVzJHN0aW1fdGVtcG9faW50ZW5kZWQsIHBwLm1lYXN1cmVzJGxlbmd0aCwgc2VwID0gIl8iKSkKCgpJVElzJHBwX2lkX2JlaGF2IDwtIGFzLmZhY3RvcihJVElzJHBwX2lkX2JlaGF2KQpJVElzJGNvbmRpdGlvbiA8LSBhcy5mYWN0b3IocGFzdGUoSVRJcyRzdGltX3RlbXBvX2ludGVuZGVkLCBJVElzJGxlbmd0aCwgc2VwID0gIl8iKSkKCklUSXMuYnl0cmlhbCRjb25kaXRpb24gPC0gYXMuZmFjdG9yKHBhc3RlKElUSXMuYnl0cmlhbCRzdGltX3RlbXBvX2ludGVuZGVkLCBJVElzLmJ5dHJpYWwkbGVuZ3RoLCBzZXAgPSAiXyIpKQpJVElzLmJ5dHJpYWwkcHBfaWRfYmVoYXYgPC0gYXMuZmFjdG9yKElUSXMuYnl0cmlhbCRwcF9pZF9iZWhhdikKYGBgCgoKIyBEZXNjcmlwdGl2ZXMKCmBgYHtyIHRhYmxlfQpkZXNjcmlwdGl2ZXMudGFibGUgPC0gZGRwbHkoSVRJcywgLihzdGltX3RlbXBvX2ludGVuZGVkLCBsZW5ndGgpLCBzdW1tYXJpemUsCiAgbl90YXBzID0gbGVuZ3RoKHJlc3BfaXRpKSwKICBuX3RyaWFscyA9IGxlbmd0aCh1bmlxdWUoc2VxdWVuY2VfaWQpKSwKICBtZWFuX2lvaSA9IG1lYW4oc3RpbV9pb2kpLAogIG1lZGlhbl9pb2kgPSBtZWRpYW4oc3RpbV9pb2kpLAogIHNkX2lvaSA9IHNkKHN0aW1faW9pKSwKICBtZWFuX2l0aSA9IG1lYW4ocmVzcF9pdGkpLAogIG1lZGlhbl9pdGkgPSBtZWRpYW4ocmVzcF9pdGkpLAogIHNkX2l0aSA9IHNkKHJlc3BfaXRpKSwKKQoKbGFiZWxzX3RhYmxlMSA8LSBjKCJUZW1wbyBjb25kLiIsICJMZW5ndGgiLCAiTiB0YXBzIiwgIk4gdHJpYWxzIiwgIk1lYW4gSU9JIiwgIk1lZGlhbiBJT0kiLCAiU0QgSU9JIiwgIk1lYW4gSVRJIiwgIk1lZGlhbiBJVEkiLCAiU0QgSVRJIikKCgojIGthYmxlCmthYmxlKGRlc2NyaXB0aXZlcy50YWJsZSwgY29sLm5hbWVzID0gbGFiZWxzX3RhYmxlMSkgJT4lIGthYmxlX3N0eWxpbmcoYm9vdHN0cmFwX29wdGlvbnMgPSBjKCJzdHJpcGVkIiwgImhvdmVyIiwgImNvbmRlbnNlZCIsICJyZXNwb25zaXZlIikpCmBgYAoKIyBWaW9saW4gcGxvdHMgd2l0aCBhbGwgY29uZGl0aW9ucwoKCiMjIEcgbWVhc3VyZQoKYGBge3IgZy1zY29yZX0KZ2dwbG90KHBwLm1lYXN1cmVzLCBhZXMoeCA9IGNvbmRpdGlvbiwgeSA9IEdfcmVzcCwgZmlsbCA9IGNvbmRpdGlvbiwgY29sb3VyID0gY29uZGl0aW9uKSkgKwogIGdlb21fdmlvbGluKGFscGhhID0gMC43LCBzaG93LmxlZ2VuZCA9IEZBTFNFKSArCiAgZ2VvbV9wb2ludChzaXplID0gMSwgc2hvdy5sZWdlbmQgPSBGQUxTRSwgY29sb3VyID0gImJsYWNrIiwgYWxwaGEgPSAwLjMpICsKICBzY2FsZV94X2Rpc2NyZXRlKGxhYmVscyA9IGMoCiAgICAiNDAwXzQiID0gIjQwMCBtc1xuNCBldmVudHMiLAogICAgIjQwMF81IiA9ICI0MDAgbXNcbjUgZXZlbnRzIiwKICAgICI2MDBfNCIgPSAiNjAwIG1zXG40IGV2ZW50cyIsCiAgICAiNjAwXzUiID0gIjYwMCBtc1xuNSBldmVudHMiCiAgKSkgKwogIHN0YXRfc3VtbWFyeShnZW9tID0gInBvaW50cmFuZ2UiLCBzaXplID0gMSwgbGluZXdpZHRoID0gMS41LCBjb2xvdXIgPSAiYmxhY2siLCBzaG93LmxlZ2VuZCA9IEZBTFNFKSArCiAgdGhlbWVfbnBvcigpICsKICBsYWJzKAogICAgeCA9ICJDb25kaXRpb24iLAogICAgeSA9IGV4cHJlc3Npb24oaXRhbGljKEcpIH4gbWVhc3VyZSksCiAgICB0aXRsZSA9ICJHcmFtbWF0aWNhbCByZWR1bmRhbmN5IGJ5IGNvbmRpdGlvbiIsCiAgICBzdWJ0aXRsZSA9ICJIaWdoZXIgdmFsdWVzIG1lYW4gbW9yZSBncmFtbWF0aWNhbCByZWR1bmRhbmN5IiwKICAgIGNhcHRpb24gPSAiSW50ZXJwcmV0YXRpb246IExldCdzIHNheSBhIHBhcnRpY2lwYW50IGFsd2F5cyB0YXBzIGEgcXVhcnRlcm5vdGUgYW5kIHRoZW4gYW4gZWlnaHRoIG5vdGUuClRoaXMgbWVhbnMgdGhlIHF1YXJ0ZXJub3RlLWVpZ2h0aCBub3RlIGNvbWJpbmF0aW9uIGlzIHJlZHVuZGFudCwgYXMgaXQgY291bGQgaGF2ZSBiZWVuCm9uZSBzeW1ib2wsIHNvIEcgaXMgaGlnaGVyLiBUaGUgbW9yZSBkaWZmZXJlbnQgY29tYmluYXRpb25zIG9mIHN5bWJvbHMgYSBwYXJ0aWNpcGFudCB1c2VzLAp0aGUgbG93ZXIgdGhlIEcgc2NvcmUuIgogICkgKwogIHRoZW1lKHBsb3QuY2FwdGlvbiA9IGVsZW1lbnRfdGV4dChoanVzdCA9IDApKQoKCgpnZ3NhdmUoaGVyZSgicGxvdHMiLCAiYmVoYXZpb3VyYWxfbWVhc3VyZXMiLCAiRy5wZGYiKSkKYGBgCgoKIyMgRW50cm9weQoKYGBge3IgZW50cm9weS1hbGx9CmdncGxvdChwcC5tZWFzdXJlcywgYWVzKHggPSBjb25kaXRpb24sIHkgPSBlbnRyb3B5X2RpZmZfbm9ybV9xX2F2ZywgZmlsbCA9IGNvbmRpdGlvbiwgY29sb3VyID0gY29uZGl0aW9uKSkgKwogIGdlb21fdmlvbGluKGFscGhhID0gMC43LCBzaG93LmxlZ2VuZCA9IEZBTFNFKSArCiAgZ2VvbV9wb2ludChzaXplID0gMSwgc2hvdy5sZWdlbmQgPSBGQUxTRSwgY29sb3VyID0gImJsYWNrIiwgYWxwaGEgPSAwLjMpICsKICBzY2FsZV94X2Rpc2NyZXRlKGxhYmVscyA9IGMoCiAgICAiNDAwXzQiID0gIjQwMCBtc1xuNCBldmVudHMiLAogICAgIjQwMF81IiA9ICI0MDAgbXNcbjUgZXZlbnRzIiwKICAgICI2MDBfNCIgPSAiNjAwIG1zXG40IGV2ZW50cyIsCiAgICAiNjAwXzUiID0gIjYwMCBtc1xuNSBldmVudHMiCiAgKSkgKwogIHN0YXRfc3VtbWFyeShnZW9tID0gInBvaW50cmFuZ2UiLCBzaXplID0gMSwgbGluZXdpZHRoID0gMS41LCBjb2xvdXIgPSAiYmxhY2siLCBzaG93LmxlZ2VuZCA9IEZBTFNFKSArCiAgdGhlbWVfbnBvcigpICsKICBsYWJzKAogICAgeSA9ICJFbnRyb3B5IGRpZmZlcmVuY2UiLCB0aXRsZSA9ICJFbnRyb3B5IGRpZmZlcmVuY2UgYnkgcGFydGljaXBhbnQgYW5kIGNvbmRpdGlvbiIsCiAgICBzdWJ0aXRsZSA9ICJOZWdhdGl2ZSB2YWx1ZXMgbWVhbiBwYXJ0aWNpcGFudHMgZGVjcmVhc2VkIGVudHJvcHkiLCBjb2xvdXIgPSAiUGFydGljaXBhbnQiCiAgKQpnZ3NhdmUoaGVyZSgicGxvdHMiLCAiYmVoYXZpb3VyYWxfbWVhc3VyZXMiLCAiZW50cm9weS5wZGYiKSkKYGBgCgojIyBOdW1iZXIgb2Ygc21hbGwgaW50ZWdlciByYXRpb3MgaW50cm9kdWNlZAoKYGBge3Igc2ltcGxlLWludGVnZXJzfQpnZ3Bsb3QocHAubWVhc3VyZXMsIGFlcygKICB4ID0gY29uZGl0aW9uLAogIHkgPSBpc29jaHJvbnlfaW50cm9kdWNlZCwKICBjb2xvdXIgPSBjb25kaXRpb24sIGZpbGwgPSBjb25kaXRpb24KKSkgKwogIHN0YXRfc3VtbWFyeShnZW9tID0gInBvaW50cmFuZ2UiLCBzaXplID0gMSwgbGluZXdpZHRoID0gMS41LCBjb2xvdXIgPSAiYmxhY2siLCBzaG93LmxlZ2VuZCA9IEZBTFNFKSArCiAgZ2VvbV92aW9saW4oYWxwaGEgPSAwLjcsIHNob3cubGVnZW5kID0gRkFMU0UpICsKICBnZW9tX3BvaW50KHNpemUgPSAxLCBzaG93LmxlZ2VuZCA9IEZBTFNFLCBjb2xvdXIgPSAiYmxhY2siLCBhbHBoYSA9IDAuMykgKwogIHNjYWxlX3hfZGlzY3JldGUobGFiZWxzID0gYygKICAgICI0MDBfNCIgPSAiNDAwIG1zXG40IGV2ZW50cyIsCiAgICAiNDAwXzUiID0gIjQwMCBtc1xuNSBldmVudHMiLAogICAgIjYwMF80IiA9ICI2MDAgbXNcbjQgZXZlbnRzIiwKICAgICI2MDBfNSIgPSAiNjAwIG1zXG41IGV2ZW50cyIKICApKSArCiAgbGFicygKICAgIHggPSAiQ29uZGl0aW9uIiwgeSA9ICJJc29jaHJvbm91cyByYXRpb3MgaW50cm9kdWNlZCIsCiAgICB0aXRsZSA9ICJJc29jaHJvbm91cyByYXRpb3MgaW50cm9kdWNlZCBieSBwYXJ0aWNpcGFudCBieSBjb25kaXRpb24gKG5vcm1hbGl6ZWQgY291bnRzKSIsCiAgICBzdWJ0aXRsZSA9ICJOZWdhdGl2ZSB2YWx1ZXMgbWVhbiBhIHJlZHVjdGlvbiBvZiBpc29jaHJvbnkgZnJvbSBzdGltdWx1cyB0byByZXNwb25zZSIsCiAgKSArCiAgdGhlbWVfbnBvcigpCgpnZ3NhdmUoaGVyZSgicGxvdHMiLCAiYmVoYXZpb3VyYWxfbWVhc3VyZXMiLCAiaXNvY2hyb255LnBkZiIpKQoKZ2dwbG90KHBwLm1lYXN1cmVzLCBhZXMoCiAgeCA9IGNvbmRpdGlvbiwKICB5ID0gYmluYXJ5X29yX3Rlcm5hcnlfaW50cm9kdWNlZCwKICBjb2xvdXIgPSBjb25kaXRpb24sIGZpbGwgPSBjb25kaXRpb24KKSkgKwogIHN0YXRfc3VtbWFyeShnZW9tID0gInBvaW50cmFuZ2UiLCBzaXplID0gMSwgbGluZXdpZHRoID0gMS41LCBjb2xvdXIgPSAiYmxhY2siLCBzaG93LmxlZ2VuZCA9IEZBTFNFKSArCiAgZ2VvbV92aW9saW4oYWxwaGEgPSAwLjcsIHNob3cubGVnZW5kID0gRkFMU0UpICsKICBnZW9tX3BvaW50KHNpemUgPSAxLCBzaG93LmxlZ2VuZCA9IEZBTFNFLCBjb2xvdXIgPSAiYmxhY2siLCBhbHBoYSA9IDAuMykgKwogIHNjYWxlX3hfZGlzY3JldGUobGFiZWxzID0gYygKICAgICI0MDBfNCIgPSAiNDAwIG1zXG40IGV2ZW50cyIsCiAgICAiNDAwXzUiID0gIjQwMCBtc1xuNSBldmVudHMiLAogICAgIjYwMF80IiA9ICI2MDAgbXNcbjQgZXZlbnRzIiwKICAgICI2MDBfNSIgPSAiNjAwIG1zXG41IGV2ZW50cyIKICApKSArCiAgbGFicygKICAgIHggPSAiQ29uZGl0aW9uIiwgeSA9ICJCaW5hcnkgYW5kIHRlcm5hcnkgcmF0aW9zIGludHJvZHVjZWQgKG5vcm1hbGl6ZWQgY291bnRzKSIsCiAgICB0aXRsZSA9ICJCaW5hcnkgYW5kIHRlcm5hcnkgcmF0aW9zIGludHJvZHVjZWQgYnkgcGFydGljaXBhbnQgYnkgY29uZGl0aW9uIiwKICAgIHN1YnRpdGxlID0gIk5lZ2F0aXZlIHZhbHVlcyBtZWFuIGEgZ2VuZXJhbCByZWR1Y3Rpb24gb2YgYmluYXJ5IG9yIHRlcm5hcnkgcmF0aW9zIGZyb20gc3RpbXVsdXMgdG8gcmVzcG9uc2UiLAogICkgKwogIHRoZW1lX25wb3IoKQoKZ2dzYXZlKGhlcmUoInBsb3RzIiwgImJlaGF2aW91cmFsX21lYXN1cmVzIiwgImJpbmFyeV90ZXJuYXJ5LnBkZiIpKQpgYGAKCgojIFZpb2xpbiBwbG90cyB3aXRoIG9ubHkgNjAwIG1zLCA1IGV2ZW50cwoKCiMjIEVudHJvcHkKCmBgYHtyIGVudHJvcHktcHVifQpnZ3Bsb3QocHAubWVhc3VyZXNbcHAubWVhc3VyZXMkY29uZGl0aW9uID09ICI2MDBfNSIsIF0sIGFlcyh4ID0gIjEiLCB5ID0gZW50cm9weV9kaWZmX25vcm1fcV9hdmcsIGZpbGwgPSAiMSIpKSArCiAgZ2VvbV92aW9saW4oYWxwaGEgPSAxLCBzaG93LmxlZ2VuZCA9IEZBTFNFLCBsaW5ld2lkdGggPSAwKSArCiAgZ2VvbV9ib3hwbG90KHdpZHRoID0gMC4xLCBzaG93LmxlZ2VuZCA9IEZBTFNFLCBsaW5ld2lkdGggPSAxLjEsIGNvbG91ciA9ICJ3aGl0ZSIpICsKICBnZW9tX3BvaW50KHNob3cubGVnZW5kID0gRkFMU0UsIGNvbG91ciA9ICJ3aGl0ZSIsIHNpemUgPSAzLCBwb3NpdGlvbiA9IHBvc2l0aW9uX2ppdHRlcih3aWR0aCA9IDAuMDIpKSArCiAgdGhlbWVfbnBvcigpICsKICBzY2FsZV9maWxsX21hbnVhbCh2YWx1ZXMgPSBucG9yX2NvbG91cnMkZW50cm9weSkgKwogIGdlb21faGxpbmUoeWludGVyY2VwdCA9IDAsIGxpbmV0eXBlID0gImRhc2hlZCIsIGNvbG91ciA9ICJibGFjayIsIGxpbmV0eXBlID0gImRhc2hlZCIsIGxpbmV3aWR0aCA9IDEuNSkgKwogIHRoZW1lKAogICAgYXhpcy50ZXh0LnkgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDI0KSwKICAgIGF4aXMudGV4dC54ID0gZWxlbWVudF9ibGFuaygpLAogICAgYXhpcy50aXRsZS54ID0gZWxlbWVudF9ibGFuaygpLAogICAgcGFuZWwuZ3JpZC5tYWpvci55ID0gZWxlbWVudF9ibGFuaygpLAogICAgYXhpcy50aWNrcy54LmJvdHRvbSA9IGVsZW1lbnRfYmxhbmsoKSwKICApICsKICBsYWJzKHRpdGxlID0gIiIsIHkgPSAiIikgKwogIGNvb3JkX2NhcnRlc2lhbih5bGltID0gYygKICAgIG1pbihwcC5tZWFzdXJlcyRlbnRyb3B5X2RpZmZfbm9ybV9xX2F2Z1twcC5tZWFzdXJlcyRjb25kaXRpb24gPT0gIjYwMF81Il0pLAogICAgYWJzKG1pbihwcC5tZWFzdXJlcyRlbnRyb3B5X2RpZmZfbm9ybV9xX2F2Z1twcC5tZWFzdXJlcyRjb25kaXRpb24gPT0gIjYwMF81Il0pKQogICkpICsKICBzY2FsZV95X2NvbnRpbnVvdXMoYnJlYWtzID0gYygtMC4zLCAtMC4yLCAtMC4xLCAwLCAwLjEsIDAuMikpCgoKCmdnc2F2ZShoZXJlKCJwbG90cyIsICJiZWhhdmlvdXJhbF9tZWFzdXJlcyIsICJlbnRyb3B5XzYwMDUucGRmIikpCmBgYAoKIyMgRyBtZWFzdXJlCgpgYGB7ciBHLXB1Yn0KZ2dwbG90KHBwLm1lYXN1cmVzW3BwLm1lYXN1cmVzJGNvbmRpdGlvbiA9PSAiNjAwXzUiLCBdLCBhZXMoeCA9ICIxIiwgeSA9IEdfcmVzcCwgZmlsbCA9ICIxIikpICsKICBnZW9tX3Zpb2xpbihhbHBoYSA9IDEsIHNob3cubGVnZW5kID0gRkFMU0UsIGxpbmV3aWR0aCA9IDApICsKICBnZW9tX2JveHBsb3Qod2lkdGggPSAwLjEsIHNob3cubGVnZW5kID0gRkFMU0UsIGxpbmV3aWR0aCA9IDEuMSwgY29sb3VyID0gIndoaXRlIikgKwogIGdlb21fcG9pbnQoc2hvdy5sZWdlbmQgPSBGQUxTRSwgY29sb3VyID0gIndoaXRlIiwgc2l6ZSA9IDMsIHBvc2l0aW9uID0gcG9zaXRpb25faml0dGVyKHdpZHRoID0gMC4wMikpICsKICB0aGVtZV9ucG9yKCkgKwogIHNjYWxlX2ZpbGxfbWFudWFsKHZhbHVlcyA9IG5wb3JfY29sb3VycyRHKSArCiAgZ2VvbV9obGluZSh5aW50ZXJjZXB0ID0gMCwgbGluZXR5cGUgPSAiZGFzaGVkIiwgY29sb3VyID0gImJsYWNrIiwgbGluZXR5cGUgPSAiZGFzaGVkIiwgbGluZXdpZHRoID0gMS41KSArCiAgdGhlbWUoCiAgICBheGlzLnRleHQueSA9IGVsZW1lbnRfdGV4dChzaXplID0gMjQpLAogICAgYXhpcy50ZXh0LnggPSBlbGVtZW50X2JsYW5rKCksCiAgICBheGlzLnRpdGxlLnggPSBlbGVtZW50X2JsYW5rKCksCiAgICBwYW5lbC5ncmlkLm1ham9yLnkgPSBlbGVtZW50X2JsYW5rKCksCiAgICBheGlzLnRpY2tzLnguYm90dG9tID0gZWxlbWVudF9ibGFuaygpLAogICkgKwogIGxhYnModGl0bGUgPSAiIiwgeSA9ICIiLCB4ID0gIiIpICsKICBjb29yZF9jYXJ0ZXNpYW4oeWxpbSA9IGMoLW1heChwcC5tZWFzdXJlcyRHX3Jlc3BbcHAubWVhc3VyZXMkY29uZGl0aW9uID09ICI2MDBfNSJdKSwgbWF4KHBwLm1lYXN1cmVzJEdfcmVzcFtwcC5tZWFzdXJlcyRjb25kaXRpb24gPT0gIjYwMF81Il0pKSkgKwogIHNjYWxlX3lfY29udGludW91cyhicmVha3MgPSBjKDAsIDAuMSwgMC4yKSkKCgoKZ2dzYXZlKGhlcmUoInBsb3RzIiwgImJlaGF2aW91cmFsX21lYXN1cmVzIiwgIkdfNjAwNS5wZGYiKSkKYGBgCgojIyBCaW5hcnkvdGVybmFyeSBpbnRyb2R1Y2VkCgpgYGB7ciBiaW5hcnktdGVybmFyeS1wdWJ9CmdncGxvdChwcC5tZWFzdXJlc1twcC5tZWFzdXJlcyRjb25kaXRpb24gPT0gIjYwMF81IiwgXSwgYWVzKHggPSAiMSIsIHkgPSBiaW5hcnlfb3JfdGVybmFyeV9pbnRyb2R1Y2VkLCBmaWxsID0gIjEiKSkgKwogIGdlb21fdmlvbGluKGFscGhhID0gMSwgc2hvdy5sZWdlbmQgPSBGQUxTRSwgbGluZXdpZHRoID0gMCkgKwogIGdlb21fYm94cGxvdCh3aWR0aCA9IDAuMSwgc2hvdy5sZWdlbmQgPSBGQUxTRSwgbGluZXdpZHRoID0gMS4xLCBjb2xvdXIgPSAid2hpdGUiKSArCiAgZ2VvbV9wb2ludChzaG93LmxlZ2VuZCA9IEZBTFNFLCBjb2xvdXIgPSAid2hpdGUiLCBzaXplID0gMywgcG9zaXRpb24gPSBwb3NpdGlvbl9qaXR0ZXIod2lkdGggPSAwLjAyKSkgKwogIHRoZW1lX25wb3IoKSArCiAgc2NhbGVfZmlsbF9tYW51YWwodmFsdWVzID0gbnBvcl9jb2xvdXJzJGJpbmFyeV90ZXJuYXJ5KSArCiAgZ2VvbV9obGluZSh5aW50ZXJjZXB0ID0gMCwgbGluZXR5cGUgPSAiZGFzaGVkIiwgY29sb3VyID0gImJsYWNrIiwgbGluZXR5cGUgPSAiZGFzaGVkIiwgbGluZXdpZHRoID0gMS41KSArCiAgdGhlbWUoCiAgICBheGlzLnRleHQueSA9IGVsZW1lbnRfdGV4dChzaXplID0gMjQpLAogICAgYXhpcy50ZXh0LnggPSBlbGVtZW50X2JsYW5rKCksCiAgICBheGlzLnRpdGxlLnggPSBlbGVtZW50X2JsYW5rKCksCiAgICBwYW5lbC5ncmlkLm1ham9yLnkgPSBlbGVtZW50X2JsYW5rKCksCiAgICBheGlzLnRpY2tzLnguYm90dG9tID0gZWxlbWVudF9ibGFuaygpLAogICkgKwogIGxhYnModGl0bGUgPSAiIiwgeSA9ICIiLCB4ID0gIiIpICsKICBjb29yZF9jYXJ0ZXNpYW4oeWxpbSA9IGMoCiAgICAtbWF4KHBwLm1lYXN1cmVzJGJpbmFyeV9vcl90ZXJuYXJ5X2ludHJvZHVjZWRbcHAubWVhc3VyZXMkY29uZGl0aW9uID09ICI2MDBfNSJdKSwKICAgIG1heChwcC5tZWFzdXJlcyRiaW5hcnlfb3JfdGVybmFyeV9pbnRyb2R1Y2VkW3BwLm1lYXN1cmVzJGNvbmRpdGlvbiA9PSAiNjAwXzUiXSkKICApKQoKCgpnZ3NhdmUoaGVyZSgicGxvdHMiLCAiYmVoYXZpb3VyYWxfbWVhc3VyZXMiLCAiYmluYXJ5X3Rlcm5hcnlfNjAwNS5wZGYiKSkKYGBgCgpgYGB7ciBpc29jaHJvbnktcHVifQpnZ3Bsb3QocHAubWVhc3VyZXNbcHAubWVhc3VyZXMkY29uZGl0aW9uID09ICI2MDBfNSIsIF0sIGFlcyh4ID0gIjEiLCB5ID0gaXNvY2hyb255X2ludHJvZHVjZWQsIGZpbGwgPSAiMSIpKSArCiAgZ2VvbV92aW9saW4oYWxwaGEgPSAxLCBzaG93LmxlZ2VuZCA9IEZBTFNFLCBsaW5ld2lkdGggPSAwKSArCiAgZ2VvbV9ib3hwbG90KHdpZHRoID0gMC4xLCBzaG93LmxlZ2VuZCA9IEZBTFNFLCBsaW5ld2lkdGggPSAxLjEsIGNvbG91ciA9ICJ3aGl0ZSIpICsKICBnZW9tX3BvaW50KHNob3cubGVnZW5kID0gRkFMU0UsIGNvbG91ciA9ICJ3aGl0ZSIsIHNpemUgPSAzLCBwb3NpdGlvbiA9IHBvc2l0aW9uX2ppdHRlcih3aWR0aCA9IDAuMDIpKSArCiAgdGhlbWVfbnBvcigpICsKICBzY2FsZV9maWxsX21hbnVhbCh2YWx1ZXMgPSBucG9yX2NvbG91cnMkaXNvY2hyb255KSArCiAgZ2VvbV9obGluZSh5aW50ZXJjZXB0ID0gMCwgbGluZXR5cGUgPSAiZGFzaGVkIiwgY29sb3VyID0gImJsYWNrIiwgbGluZXR5cGUgPSAiZGFzaGVkIiwgbGluZXdpZHRoID0gMS41KSArCiAgdGhlbWUoCiAgICBheGlzLnRleHQueSA9IGVsZW1lbnRfdGV4dChzaXplID0gMjQpLAogICAgYXhpcy50ZXh0LnggPSBlbGVtZW50X2JsYW5rKCksCiAgICBheGlzLnRpdGxlLnggPSBlbGVtZW50X2JsYW5rKCksCiAgICBwYW5lbC5ncmlkLm1ham9yLnkgPSBlbGVtZW50X2JsYW5rKCksCiAgICBheGlzLnRpY2tzLnguYm90dG9tID0gZWxlbWVudF9ibGFuaygpLAogICkgKwogIGxhYnModGl0bGUgPSAiIiwgeSA9ICIiLCB4ID0gIiIpICsKICBjb29yZF9jYXJ0ZXNpYW4oeWxpbSA9IGMoCiAgICAtbWF4KHBwLm1lYXN1cmVzJGlzb2Nocm9ueV9pbnRyb2R1Y2VkW3BwLm1lYXN1cmVzJGNvbmRpdGlvbiA9PSAiNjAwXzUiXSksCiAgICBtYXgocHAubWVhc3VyZXMkaXNvY2hyb255X2ludHJvZHVjZWRbcHAubWVhc3VyZXMkY29uZGl0aW9uID09ICI2MDBfNSJdKQogICkpCgoKCmdnc2F2ZShoZXJlKCJwbG90cyIsICJiZWhhdmlvdXJhbF9tZWFzdXJlcyIsICJpc29jaHJvbnlfNjAwNS5wZGYiKSkKYGBgCgoKCgojIENvcnJlbGF0aW9ucyBiZXR3ZWVuIGJlaGF2aW91cmFsIG1lYXN1cmVzCgoKYGBge3IgY29ycmVsYXRpb25zfQpsYWJlbHMgPC0gYXNfbGFiZWxsZXIoYygKICAiR19yZXNwIiA9ICJHIChyZXNwb25zZSkiLAogICJlbnRyb3B5X2RpZmZfbm9ybV9xX2F2ZyIgPSAiRW50cm9weSBkaWZmZXJlbmNlIiwKICAiaXNvY2hyb255X2ludHJvZHVjZWQiID0gIklzb2Nocm9ueSBpbnRyb2R1Y2VkIiwKICAiYmluYXJ5X29yX3Rlcm5hcnlfaW50cm9kdWNlZCIgPSAiQmluYXJ5L3Rlcm5hcnlcbmludHJvZHVjZWQiLAogICJlZGl0X2Rpc3RhbmNlX25vcm1fcV9hdmciID0gIkVkaXRcbihMZXZlbnNodGVpbikgZGlzdGFuY2UiCikpCgpwcC5tZWFzdXJlcy5jb3IgPC0gcHAubWVhc3VyZXMKCmxldmVscygKICBwcC5tZWFzdXJlcy5jb3IkY29uZGl0aW9uCikgPC0gYygiNDAwIG1zICg0KSIsICI0MDAgbXMgKDUpIiwgIjYwMCBtcyAoNCkiLCAiNjAwIG1zICg1KSIpCgojIFNjYXR0ZXJwbG90cyB3aXRoIGNvbWJpbmF0aW9ucyBiZXR3ZWVuIGFsbCBtZWFzdXJlcwpnZ3Bsb3QyOjp0aGVtZV9zZXQodGhlbWVfbWluaW1hbCgpKQpwIDwtIGdncGFpcnMoCiAgcHAubWVhc3VyZXMuY29yLAogIGNvbHVtbnMgPSBjKAogICAgIkdfcmVzcCIsICJlbnRyb3B5X2RpZmZfbm9ybV9xX2F2ZyIsICJpc29jaHJvbnlfaW50cm9kdWNlZCIsICJiaW5hcnlfb3JfdGVybmFyeV9pbnRyb2R1Y2VkIiwgImVkaXRfZGlzdGFuY2Vfbm9ybV9xX2F2ZyIKICApLAogIHRpdGxlID0gIkNvcnJlbGF0aW9ucyBiZXR3ZWVuIGJlaGF2aW9yYWwgbWVhc3VyZXMiLAogIGxhYmVsbGVyID0gbGFiZWxzLAogIG1hcHBpbmcgPSBhZXMoY29sb3VyID0gY29uZGl0aW9uLCBmaWxsID0gY29uZGl0aW9uLCBhbHBoYSA9IDEsIGxhYmVsX2NvbG9yID0gY29uZGl0aW9uKQopICsgc2NpY286OnNjYWxlX2ZpbGxfc2NpY29fZChwYWxldHRlID0gImJlcmxpbiIsIGJlZ2luID0gMC4xLCBlbmQgPSAxKSArIHNjaWNvOjpzY2FsZV9jb2xvcl9zY2ljb19kKHBhbGV0dGUgPSAiYmVybGluIiwgYmVnaW4gPSAwLjEsIGVuZCA9IDEpCgpnZ3NhdmUoaGVyZSgicGxvdHMiLCAiYmVoYXZpb3VyYWxfbWVhc3VyZXMiLCAiY29ycmVsYXRpb25zLnBkZiIpLCBwLCB3aWR0aCA9IDksIGhlaWdodCA9IDkpCmdnc2F2ZShoZXJlKCJwbG90cyIsICJiZWhhdmlvdXJhbF9tZWFzdXJlcyIsICJjb3JyZWxhdGlvbnMucG5nIiksIHAsIGJnID0gIndoaXRlIiwgd2lkdGggPSA5LCBoZWlnaHQgPSA5KQpgYGAKCgojIENvcnJlbGF0aW9ucyB3aXRoIG5ldHdvcmsgY29ubmVjdGl2aXR5CgpgYGB7ciBlbnRyb3B5fQpnZ3Bsb3QoY29ycmVsYXRpb25zLCBhZXMoeCA9IGVudHJvcHlfY29ubiwgeSA9IGVudHJvcHlfYmVoYXYsIGNvbG91ciA9ICIxIiwgZmlsbCA9ICIxIikpICsKICBnZW9tX3BvaW50KGFlcyhzaXplID0gYWJzKGVudHJvcHlfYmVoYXYpKSwgc2hvdy5sZWdlbmQgPSBGQUxTRSwgc2hhcGUgPSAxOCkgKwogIGdlb21fc21vb3RoKG1ldGhvZCA9ICJsbSIsIHNob3cubGVnZW5kID0gRkFMU0UpICsKICB0aGVtZV9ucG9yKCkgKwogIGxhYnMoCiAgICB4ID0gIiIsIHkgPSAiIgogICkgKwogIHNjYWxlX2ZpbGxfbWFudWFsKHZhbHVlcyA9IGMoIjEiID0gbnBvcl9jb2xvdXJzJGVudHJvcHkpKSArCiAgc2NhbGVfY29sb3VyX21hbnVhbCh2YWx1ZXMgPSBjKCIxIiA9IG5wb3JfY29sb3VycyRlbnRyb3B5KSkgKwogIHRoZW1lKHBhbmVsLmdyaWQubWFqb3IueSA9IGVsZW1lbnRfYmxhbmsoKSkgKwogIHNjYWxlX3NpemUocmFuZ2UgPSBjKDEsIDcpKQpnZ3NhdmUoaGVyZSgicGxvdHMiLCAiY29ycmVsYXRpb25zX2JlaGF2X2Nvbm4iLCAiZW50cm9weV9uZXR3b3JrLnBkZiIpLCB3aWR0aCA9IDQsIGhlaWdodCA9IDQpCmBgYAoKYGBge3IgR30KZ2dwbG90KGNvcnJlbGF0aW9ucywgYWVzKHggPSBHX2Nvbm4sIHkgPSBHX2JlaGF2LCBjb2xvdXIgPSAiMSIsIGZpbGwgPSAiMSIpKSArCiAgZ2VvbV9wb2ludChhZXMoc2l6ZSA9IGFicyhHX2JlaGF2KSksIHNob3cubGVnZW5kID0gRkFMU0UsIHNoYXBlID0gMTgpICsKICBnZW9tX3Ntb290aChtZXRob2QgPSAibG0iLCBzaG93LmxlZ2VuZCA9IEZBTFNFKSArCiAgdGhlbWVfbnBvcigpICsKICBsYWJzKAogICAgeCA9ICIiLCB5ID0gIiIKICApICsKICBzY2FsZV9maWxsX21hbnVhbCh2YWx1ZXMgPSBjKCIxIiA9IG5wb3JfY29sb3VycyRHKSkgKwogIHNjYWxlX2NvbG91cl9tYW51YWwodmFsdWVzID0gYygiMSIgPSBucG9yX2NvbG91cnMkRykpICsKICB0aGVtZShwYW5lbC5ncmlkLm1ham9yLnkgPSBlbGVtZW50X2JsYW5rKCkpICsKICBzY2FsZV9zaXplKHJhbmdlID0gYygxLCA3KSkKZ2dzYXZlKGhlcmUoInBsb3RzIiwgImNvcnJlbGF0aW9uc19iZWhhdl9jb25uIiwgIkdfbmV0d29yay5wZGYiKSwgd2lkdGggPSA0LCBoZWlnaHQgPSA0KQpgYGAKCmBgYHtyIGJpbmFyeS10ZXJuYXJ5fQpnZ3Bsb3QoY29ycmVsYXRpb25zLCBhZXMoeCA9IGJpbmFyeV90ZXJuYXJ5X2Nvbm4sIHkgPSBiaW5hcnlfdGVybmFyeV9iZWhhdiwgY29sb3VyID0gIjEiLCBmaWxsID0gIjEiKSkgKwogIGdlb21fcG9pbnQoYWVzKHNpemUgPSBhYnMoYmluYXJ5X3Rlcm5hcnlfYmVoYXYpKSwgc2hvdy5sZWdlbmQgPSBGQUxTRSwgc2hhcGUgPSAxOCkgKwogIGdlb21fc21vb3RoKG1ldGhvZCA9ICJsbSIsIHNob3cubGVnZW5kID0gRkFMU0UpICsKICB0aGVtZV9ucG9yKCkgKwogIGxhYnMoCiAgICB4ID0gIiIsIHkgPSAiIgogICkgKwogIHNjYWxlX2ZpbGxfbWFudWFsKHZhbHVlcyA9IGMoIjEiID0gbnBvcl9jb2xvdXJzJGJpbmFyeV90ZXJuYXJ5KSkgKwogIHNjYWxlX2NvbG91cl9tYW51YWwodmFsdWVzID0gYygiMSIgPSBucG9yX2NvbG91cnMkYmluYXJ5X3Rlcm5hcnkpKSArCiAgdGhlbWUocGFuZWwuZ3JpZC5tYWpvci55ID0gZWxlbWVudF9ibGFuaygpKSArCiAgc2NhbGVfc2l6ZShyYW5nZSA9IGMoMSwgNykpCmdnc2F2ZShoZXJlKCJwbG90cyIsICJjb3JyZWxhdGlvbnNfYmVoYXZfY29ubiIsICJiaW5hcnlfdGVybmFyeV9uZXR3b3JrLnBkZiIpLCB3aWR0aCA9IDQsIGhlaWdodCA9IDQpCmBgYAoKYGBge3IgYmluYXJ5LXRlcm5hcnktc3RydWN0fQpnZ3Bsb3QoY29ycmVsYXRpb25zLCBhZXMoeCA9IGJpbmFyeV90ZXJuYXJ5X3N0cnVjdCwgeSA9IGJpbmFyeV90ZXJuYXJ5X2JlaGF2LCBjb2xvdXIgPSAiMSIsIGZpbGwgPSAiMSIpKSArCiAgZ2VvbV9wb2ludChhZXMoc2l6ZSA9IGFicyhiaW5hcnlfdGVybmFyeV9iZWhhdikpLCBzaG93LmxlZ2VuZCA9IEZBTFNFLCBzaGFwZSA9IDE4KSArCiAgZ2VvbV9zbW9vdGgobWV0aG9kID0gImxtIiwgc2hvdy5sZWdlbmQgPSBGQUxTRSkgKwogIHRoZW1lX25wb3IoKSArCiAgbGFicygKICAgIHggPSAiIiwgeSA9ICIiCiAgKSArCiAgc2NhbGVfZmlsbF9tYW51YWwodmFsdWVzID0gYygiMSIgPSBucG9yX2NvbG91cnMkYmluYXJ5X3Rlcm5hcnkpKSArCiAgc2NhbGVfY29sb3VyX21hbnVhbCh2YWx1ZXMgPSBjKCIxIiA9IG5wb3JfY29sb3VycyRiaW5hcnlfdGVybmFyeSkpICsKICB0aGVtZShwYW5lbC5ncmlkLm1ham9yLnkgPSBlbGVtZW50X2JsYW5rKCkpICsKICBzY2FsZV9zaXplKHJhbmdlID0gYygxLCA3KSkKZ2dzYXZlKGhlcmUoInBsb3RzIiwgImNvcnJlbGF0aW9uc19iZWhhdl9jb25uIiwgImJpbmFyeV90ZXJuYXJ5X3N0cnVjdC5wZGYiKSwgd2lkdGggPSA0LCBoZWlnaHQgPSA0KQpgYGAKCgojIEZpeGVsLWJhc2VkIGFuYWx5c2lzIChpc29jaHJvbnkgdnMuIHBhcnRpYWwgcmVzaWR1YWxzKQoKYGBge3IgZml4ZWwtYmFzZWR9CnJlc3VsdHMgPC0gcmVhZC5jc3YoaGVyZSgiZGF0YSIsICJicmFpbiIsICJmaXhlbF9iYXNlZCIsICJjb3J0aWNhbF9zdWJjb3J0aWNhbF9yZWdyZXNzaW9uLmNzdiIpKQpiZWhhdiA8LSBwcC5tZWFzdXJlc1twcC5tZWFzdXJlcyRjb25kaXRpb24gPT0gIjYwMF81IiAmICFwcC5tZWFzdXJlcyRwcF9pZF9iZWhhdiAlaW4lIGMoMzAsIDQ1KSwgXQoKIyBDcmVhdGUgRGF0YUZyYW1lCmZpeGVsIDwtIGRhdGEuZnJhbWUoCiAgInBwX2lkX2JlaGF2IiA9IGJlaGF2JHBwX2lkX2JlaGF2LAogICJpc29jaHJvbnlfaW50cm9kdWNlZCIgPSBiZWhhdiRpc29jaHJvbnlfaW50cm9kdWNlZCwKICAic3RyaWFsX3ByZWNlbnRyYWwiID0gcmVzdWx0cyRTVF9QUkVDX2ZkLAogICJ0aGFsYW11c19wcmVjZW50cmFsIiA9IHJlc3VsdHMkVF9QUkVDX2ZkCikKCmdncGxvdChmaXhlbCwgYWVzKHggPSBzdHJpYWxfcHJlY2VudHJhbCwgeSA9IGlzb2Nocm9ueV9pbnRyb2R1Y2VkLCBjb2xvdXIgPSAiMSIsIGZpbGwgPSAiMSIpKSArCiAgZ2VvbV9wb2ludCgsIHNob3cubGVnZW5kID0gRkFMU0UpICsKICBnZW9tX3Ntb290aChtZXRob2QgPSAibG0iLCBzaG93LmxlZ2VuZCA9IEZBTFNFKSArCiAgdGhlbWVfbnBvcigpICsKICBsYWJzKAogICAgeCA9ICIiLCB5ID0gIiIKICApICsKICBzY2FsZV9jb2xvdXJfbWFudWFsKHZhbHVlcyA9IGMoIjEiID0gbnBvcl9jb2xvdXJzJGlzb2Nocm9ueSkpICsKICBzY2FsZV9maWxsX21hbnVhbCh2YWx1ZXMgPSBjKCIxIiA9IG5wb3JfY29sb3VycyRpc29jaHJvbnkpKSArCiAgdGhlbWUocGFuZWwuZ3JpZC5tYWpvci55ID0gZWxlbWVudF9ibGFuaygpKQoKZ2dzYXZlKGhlcmUoInBsb3RzIiwgImZpeGVsX2Jhc2VkIiwgImlzb2Nocm9ueV9zdHJpYWxfcHJlY2VudHJhbC5wZGYiKSwgd2lkdGggPSA0LCBoZWlnaHQgPSA0KQoKZ2dwbG90KGZpeGVsLCBhZXMoeCA9IHRoYWxhbXVzX3ByZWNlbnRyYWwsIHkgPSBpc29jaHJvbnlfaW50cm9kdWNlZCwgY29sb3VyID0gIjEiLCBmaWxsID0gIjEiKSkgKwogIGdlb21fcG9pbnQoc2hvdy5sZWdlbmQgPSBGQUxTRSkgKwogIGdlb21fc21vb3RoKG1ldGhvZCA9ICJsbSIsIHNob3cubGVnZW5kID0gRkFMU0UpICsKICB0aGVtZV9ucG9yKCkgKwogIGxhYnMoCiAgICB4ID0gIiIsIHkgPSAiIgogICkgKwogIHNjYWxlX2NvbG91cl9tYW51YWwodmFsdWVzID0gYygiMSIgPSBucG9yX2NvbG91cnMkaXNvY2hyb255KSkgKwogIHNjYWxlX2ZpbGxfbWFudWFsKHZhbHVlcyA9IGMoIjEiID0gbnBvcl9jb2xvdXJzJGlzb2Nocm9ueSkpICsKICB0aGVtZShwYW5lbC5ncmlkLm1ham9yLnkgPSBlbGVtZW50X2JsYW5rKCkpCgpnZ3NhdmUoaGVyZSgicGxvdHMiLCAiZml4ZWxfYmFzZWQiLCAiaXNvY2hyb255X3RoYWxhbXVzX3ByZWNlbnRyYWwucGRmIiksIHdpZHRoID0gNCwgaGVpZ2h0ID0gNCkKYGBgCg==